package com.joker.service;

import com.joker.pojo.Blog;
import com.joker.vo.BlogQuery;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

/**
 * @Author JokerKS
 * @Date 2021/12/07 15:19
 * @Version 1.0
 */
public interface BlogService {

	Blog getBlog(Long id);

	Blog getConvert(Long id);

	Page<Blog> listBlog(Pageable pageable, BlogQuery blog);

	Page<Blog> listBlog(Pageable pageable);

	Page<Blog> listBlog(Long tagId, Pageable pageable);

	Page<Blog> listBlog(String query, Pageable pageable);

	Map<String, List<Blog>> archivesBlog();

	Long archivesBlogCount();

	List<Blog> listRecommendBlogTop(Integer size);

	Blog saveBlog(Blog blog);

	Blog updateBlog(Long id, Blog blog);

	void deleteBlog(Long id);
}
